<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremoteESP8266: src/ir_Panasonic.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">IRremoteESP8266
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">ir_Panasonic.h</div>  </div>
</div><!--header-->
<div class="contents">
<a href="ir__Panasonic_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="comment">// Copyright 2018 David Conran</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160; </div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160; </div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;<span class="comment">// Supports:</span></div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: TV (PANASONIC)</span></div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: NKE series A/C (PANASONIC_AC NKE/2)</span></div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: DKE series A/C (PANASONIC_AC DKE/3)</span></div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: DKW series A/C (PANASONIC_AC DKE/3)</span></div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: PKR series A/C (PANASONIC_AC DKE/3)</span></div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: JKE series A/C (PANASONIC_AC JKE/4)</span></div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CKP series A/C (PANASONIC_AC CKP/5)</span></div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: RKR series A/C (PANASONIC_AC RKR/6)</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-ME10CKPG A/C (PANASONIC_AC CKP/5)</span></div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-ME12CKPG A/C (PANASONIC_AC CKP/5)</span></div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-ME14CKPG A/C (PANASONIC_AC CKP/5)</span></div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-E7PKR A/C (PANASONIC_AC DKE/2)</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-Z9RKR A/C (PANASONIC_AC RKR/6)</span></div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-Z24RKR A/C (PANASONIC_AC RKR/6)</span></div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-YW9MKD A/C (PANASONIC_AC JKE/4)</span></div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: A75C2311 remote (PANASONIC_AC CKP/5)</span></div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: A75C2616-1 remote (PANASONIC_AC DKE/3)</span></div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: A75C3704 remote (PANASONIC_AC DKE/3)</span></div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: A75C3747 remote (PANASONIC_AC JKE/4)</span></div>
<div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: CS-E9CKP series A/C (PANASONIC_AC32)</span></div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: A75C2295 remote (PANASONIC_AC32)</span></div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="comment">//   Brand: Panasonic,  Model: A75C4762 remote (PANASONIC_AC RKR/6)</span></div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#ifndef IR_PANASONIC_H_</span></div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#define IR_PANASONIC_H_</span></div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160; </div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#define __STDC_LIMIT_MACROS</span></div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &lt;stdint.h&gt;</span></div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#ifdef ARDUINO</span></div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a>&quot;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRsend_8h.html">IRsend.h</a>&quot;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#ifdef UNIT_TEST</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor">#include &quot;IRsend_test.h&quot;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="comment">// Constants</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#af344612d7f1c0d3f8271c312f310243e">   46</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Panasonic_8h.html#af344612d7f1c0d3f8271c312f310243e">kPanasonicFreq</a> = 36700;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#adde8b69377faa9a4566dc15e95711257">   47</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Panasonic_8h.html#adde8b69377faa9a4566dc15e95711257">kPanasonicAcExcess</a> = 0;</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="comment">// Much higher than usual. See issue #540.</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a586a655b3afd82c38588fc1b61089aa1">   49</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Panasonic_8h.html#a586a655b3afd82c38588fc1b61089aa1">kPanasonicAcTolerance</a> = 40;</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#aa7c839a4342205c384870e8a4f5ec36b">   51</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#aa7c839a4342205c384870e8a4f5ec36b">kPanasonicAcAuto</a> = 0;  <span class="comment">// 0b000</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a2d211bd2150a67819453f3220dc0cc91">   52</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a2d211bd2150a67819453f3220dc0cc91">kPanasonicAcDry</a> = 2;   <span class="comment">// 0b010</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#acfaa3d61fbb13fc6cd8d354f1c0a8dc7">   53</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#acfaa3d61fbb13fc6cd8d354f1c0a8dc7">kPanasonicAcCool</a> = 3;  <span class="comment">// 0b011</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#ac37bb7dd975a9aa803edfc108a5071ed">   54</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#ac37bb7dd975a9aa803edfc108a5071ed">kPanasonicAcHeat</a> = 4;  <span class="comment">// 0b010</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a87e4dd423bbd1f879a9d5da31e1fea5e">   55</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a87e4dd423bbd1f879a9d5da31e1fea5e">kPanasonicAcFan</a> = 6;   <span class="comment">// 0b110</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a450c7951a525817d27351fb7c8ff2df9">   56</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a450c7951a525817d27351fb7c8ff2df9">kPanasonicAcFanMin</a> = 0;</div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a222ef797cbefbff556e0ab93f23407cc">   57</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a222ef797cbefbff556e0ab93f23407cc">kPanasonicAcFanLow</a> = 1;</div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a978004e8e2c4122fec81c5a972b842a0">   58</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a978004e8e2c4122fec81c5a972b842a0">kPanasonicAcFanMed</a> = 2;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#ab19838820e1ca649c156b5f4a5d6c8cb">   59</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#ab19838820e1ca649c156b5f4a5d6c8cb">kPanasonicAcFanHigh</a> = 3;</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#aa4599c84d72ab9c622b642870efb9cf1">   60</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#aa4599c84d72ab9c622b642870efb9cf1">kPanasonicAcFanMax</a> = 4;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a7d4486fd68969af4f7230f12e865c698">   61</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a7d4486fd68969af4f7230f12e865c698">kPanasonicAcFanAuto</a> = 7;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a2210f85a17fba2bbdfbb883e9fb57e52">   62</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a2210f85a17fba2bbdfbb883e9fb57e52">kPanasonicAcFanDelta</a> = 3;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a9e9b3d0c77ef93ab472ce14ed1534c77">   63</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a9e9b3d0c77ef93ab472ce14ed1534c77">kPanasonicAcPowerOffset</a> = 0;</div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a203e0351cd53db8376312a3289503175">   64</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a203e0351cd53db8376312a3289503175">kPanasonicAcTempOffset</a> = 1;  <span class="comment">// Bits</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#af30649a3489a4a1dc1f655d15c00e991">   65</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#af30649a3489a4a1dc1f655d15c00e991">kPanasonicAcTempSize</a> = 5;  <span class="comment">// Bits</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a7861e8477904e1a572bcf35286fd3733">   66</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a7861e8477904e1a572bcf35286fd3733">kPanasonicAcMinTemp</a> = 16;      <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a95fe6bc5b2565bf29d1a6dcee2f0c39f">   67</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a95fe6bc5b2565bf29d1a6dcee2f0c39f">kPanasonicAcMaxTemp</a> = 30;      <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a76543f9d81c2d109e04359f0c61dcb99">   68</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a76543f9d81c2d109e04359f0c61dcb99">kPanasonicAcFanModeTemp</a> = 27;  <span class="comment">// Celsius</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a1ec8db8798f79dead05233ee6333700d">   69</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a1ec8db8798f79dead05233ee6333700d">kPanasonicAcQuietOffset</a> = 0;</div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a27e9b1af4b65830015576beed69cb27d">   70</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a27e9b1af4b65830015576beed69cb27d">kPanasonicAcPowerfulOffset</a> = 5;   <span class="comment">// 0b100000</span></div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;<span class="comment">// CKP &amp; RKR models have Powerful and Quiet bits swapped.</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a5a3779cd6fd8d573ae14ed4a6d676dba">   72</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a5a3779cd6fd8d573ae14ed4a6d676dba">kPanasonicAcQuietCkpOffset</a> = <a class="code" href="ir__Panasonic_8h.html#a27e9b1af4b65830015576beed69cb27d">kPanasonicAcPowerfulOffset</a>;</div>
<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#aa839301a08c8e49548f497e786dbb6fa">   73</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#aa839301a08c8e49548f497e786dbb6fa">kPanasonicAcPowerfulCkpOffset</a> = <a class="code" href="ir__Panasonic_8h.html#a1ec8db8798f79dead05233ee6333700d">kPanasonicAcQuietOffset</a>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#ac1cea523d6e1da08d333e0b4acec81af">   74</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#ac1cea523d6e1da08d333e0b4acec81af">kPanasonicAcSwingVHighest</a> = 0x1;  <span class="comment">// 0b0001</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a25c63195112c5aedc5b5bad40441c55a">   75</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a25c63195112c5aedc5b5bad40441c55a">kPanasonicAcSwingVHigh</a> = 0x2;     <span class="comment">// 0b0010</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a5d46c8234f97e10695507b17a7483d51">   76</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a5d46c8234f97e10695507b17a7483d51">kPanasonicAcSwingVMiddle</a> = 0x3;   <span class="comment">// 0b0011</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a3ae9b6c5581f1bfb5b31e252052a6c9d">   77</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a3ae9b6c5581f1bfb5b31e252052a6c9d">kPanasonicAcSwingVLow</a> = 0x4;      <span class="comment">// 0b0100</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#af269e81dae5989c33199d607adcc04a0">   78</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#af269e81dae5989c33199d607adcc04a0">kPanasonicAcSwingVLowest</a> = 0x5;   <span class="comment">// 0b0101</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a218e2ea8c76966105c71edcb6e46cd12">   79</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a218e2ea8c76966105c71edcb6e46cd12">kPanasonicAcSwingVAuto</a> = 0xF;     <span class="comment">// 0b1111</span></div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#afad8a7257fc178321867f16939fff7c7">   81</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#afad8a7257fc178321867f16939fff7c7">kPanasonicAcSwingHMiddle</a> = 0x6;     <span class="comment">// 0b0110</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#abf1d8c53a1b69d99019c6878f9ec220d">   82</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#abf1d8c53a1b69d99019c6878f9ec220d">kPanasonicAcSwingHFullLeft</a> = 0x9;   <span class="comment">// 0b1001</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a853f2c2922e03a975bdd11efc474fa7e">   83</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a853f2c2922e03a975bdd11efc474fa7e">kPanasonicAcSwingHLeft</a> = 0xA;       <span class="comment">// 0b1010</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a282900f1c494efdc6ee057357e624d2e">   84</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a282900f1c494efdc6ee057357e624d2e">kPanasonicAcSwingHRight</a> = 0xB;      <span class="comment">// 0b1011</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a0e1b7a7591a0f14b2f8be3cb222f1187">   85</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a0e1b7a7591a0f14b2f8be3cb222f1187">kPanasonicAcSwingHFullRight</a> = 0xC;  <span class="comment">// 0b1100</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a91e2933692ad98acf054c7a69f6c2018">   86</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a91e2933692ad98acf054c7a69f6c2018">kPanasonicAcSwingHAuto</a> = 0xD;       <span class="comment">// 0b1101</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a49329b4fef403696effcbcc5c8a86cd2">   87</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a49329b4fef403696effcbcc5c8a86cd2">kPanasonicAcChecksumInit</a> = 0xF4;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a64350202f82aabfd1673f0dda4d3c13d">   88</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a64350202f82aabfd1673f0dda4d3c13d">kPanasonicAcOnTimerOffset</a> = 1;</div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a477b61044f1db5c296f13a404c536046">   89</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a477b61044f1db5c296f13a404c536046">kPanasonicAcOffTimerOffset</a> = 2;</div>
<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a16577844a2f5ca46e2dff076952f2963">   90</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a16577844a2f5ca46e2dff076952f2963">kPanasonicAcTimeSize</a> = 11;  <span class="comment">// Bits</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#ad7942b5ffbb2b1f7a5d9b3719592622b">   91</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#ad7942b5ffbb2b1f7a5d9b3719592622b">kPanasonicAcTimeOverflowSize</a> = 3;  <span class="comment">// Bits</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a61378ccad09d1a2e900123a8cbd34858">   92</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Panasonic_8h.html#a61378ccad09d1a2e900123a8cbd34858">kPanasonicAcTimeMax</a> = 23 * 60 + 59;  <span class="comment">// Mins since midnight.</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#aefb20e7cdbbc27e3c0725a8660a84a28">   93</a></span>&#160;<span class="keyword">const</span> uint16_t <a class="code" href="ir__Panasonic_8h.html#aefb20e7cdbbc27e3c0725a8660a84a28">kPanasonicAcTimeSpecial</a> = 0x600;</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160; </div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a16c946660d2ee3821dd2e30a69144a38">   95</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a16c946660d2ee3821dd2e30a69144a38">kPanasonicAcIonFilterByte</a> = 22;  <span class="comment">// Byte</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a5c1b18d1b834e9d46cbd29c74a1b8269">   96</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a5c1b18d1b834e9d46cbd29c74a1b8269">kPanasonicAcIonFilterOffset</a> = 0;  <span class="comment">// Bit</span></div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a88a9678f8b00efa173b800b0b8441f87">   98</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a88a9678f8b00efa173b800b0b8441f87">kPanasonicKnownGoodState</a>[<a class="code" href="IRremoteESP8266_8h.html#ab21d86545b57738354e7a3b833d38f94">kPanasonicAcStateLength</a>] = {</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;    0x02, 0x20, 0xE0, 0x04, 0x00, 0x00, 0x00, 0x06, 0x02,</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    0x20, 0xE0, 0x04, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00,</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    0x00, 0x0E, 0xE0, 0x00, 0x00, 0x81, 0x00, 0x00, 0x00};</div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160; </div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classIRPanasonicAc.html">  104</a></span>&#160;<span class="keyword">class </span><a class="code" href="classIRPanasonicAc.html">IRPanasonicAc</a> {</div>
<div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRPanasonicAc.html#ae8b0f4518ee1a913d47a7101b0a11185">IRPanasonicAc</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;                         <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a9a9fbf531f04c486edf913c382351b2b">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;<span class="preprocessor">#if SEND_PANASONIC_AC</span></div>
<div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a778420ebe52aa6422ba5633ce91676df">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#af6b7c6ad564253cb128ac92c00e86f0c">kPanasonicAcDefaultRepeat</a>);</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="classIRPanasonicAc.html#a3f850333f2aa7ce40856c99ef85ffd79">  115</a></span>&#160;  int8_t <a class="code" href="classIRPanasonicAc.html#a3f850333f2aa7ce40856c99ef85ffd79">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRPanasonicAc.html#a065dcc65ef3dbb8f2384f883fb97d102">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;<span class="preprocessor">#endif  // SEND_PANASONIC_AC</span></div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#af48075dc4eb84fcc7f718375d4b0e00a">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a88e6b0f607b17266567306576e623a0c">on</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a03b706293c1c5b348bba536e6d8d33f5">off</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#ad60bf8a88d041f8e8ab3d728831ee8f3">setPower</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a88e6b0f607b17266567306576e623a0c">on</a>);</div>
<div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a2d50ed3994f6cc6e205d2c5fb6c0cc55">getPower</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a58376c311177e701333f4915515d49f1">setTemp</a>(<span class="keyword">const</span> uint8_t temp, <span class="keyword">const</span> <span class="keywordtype">bool</span> remember = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#af8a5607c317e541752fada6ca79ee80f">getTemp</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a8d77292226f55601c30ee53252ba83cd">setFan</a>(<span class="keyword">const</span> uint8_t fan);</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#a302ba64400c820a5a0d822315516564a">getFan</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#add025b64e736d5120abeb2564a2849a4">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#a5ffd59dd87b047e172ba74866267a9f3">getMode</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a63308883e8447aa5cdf7d29107be220f">setRaw</a>(<span class="keyword">const</span> uint8_t state[]);</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;  uint8_t *<a class="code" href="classIRPanasonicAc.html#ad65c2bcdc3984a986f5ef2f03b5574d4">getRaw</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a6a084754596f7840dd308041d11a822d">validChecksum</a>(<span class="keyword">const</span> uint8_t *state,</div>
<div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;                            <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#ab21d86545b57738354e7a3b833d38f94">kPanasonicAcStateLength</a>);</div>
<div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc.html#a0e38b0f3c54e49cdb59f92279e19840f">calcChecksum</a>(<span class="keyword">const</span> uint8_t *state,</div>
<div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;                              <span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#ab21d86545b57738354e7a3b833d38f94">kPanasonicAcStateLength</a>);</div>
<div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a51b6ae49cb490f697adeaf7f9f466518">setQuiet</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a88e6b0f607b17266567306576e623a0c">on</a>);</div>
<div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a8d7dfc9b5f7c7a4523c0bfa4e0bc415a">getQuiet</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a6357688bc9cca92ab222343ee045f4f4">setPowerful</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a88e6b0f607b17266567306576e623a0c">on</a>);</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a736b77df0563705095d8f4241a80b1cb">getPowerful</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a5a1c4f5b9eb7a3a1a81a6acd0491c3cd">setIon</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a88e6b0f607b17266567306576e623a0c">on</a>);</div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a6d6909b7b96815c227f0009dcbd3ce8c">getIon</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a342531bfea3b05484de84e537bde390c">setModel</a>(<span class="keyword">const</span> <a class="code" href="IRsend_8h.html#a1b797a5e5176ac0eef49810bf7f40e6f">panasonic_ac_remote_model_t</a> model);</div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;  <a class="code" href="IRsend_8h.html#a1b797a5e5176ac0eef49810bf7f40e6f">panasonic_ac_remote_model_t</a> <a class="code" href="classIRPanasonicAc.html#a625be846baf3ec556a59379785e642e8">getModel</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a48f31b1f85c92fac22f85a1aa8074c6e">setSwingVertical</a>(<span class="keyword">const</span> uint8_t elevation);</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#a7a35303cd4fb4b23c0e5a25777d5819c">getSwingVertical</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a32f3f07813165a39359887485dd87254">setSwingHorizontal</a>(<span class="keyword">const</span> uint8_t direction);</div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#a37d9b268b3c8527be0939e0a24b02ef6">getSwingHorizontal</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;  <span class="keyword">static</span> uint16_t <a class="code" href="classIRPanasonicAc.html#a0eee4ad6105d35ee6c34c4666174b04b">encodeTime</a>(<span class="keyword">const</span> uint8_t hours, <span class="keyword">const</span> uint8_t mins);</div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;  uint16_t <a class="code" href="classIRPanasonicAc.html#a084479e8f23f7dbb8f155209b36efb3b">getClock</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a3f76c6aca94f52c227c2e259512fd101">setClock</a>(<span class="keyword">const</span> uint16_t mins_since_midnight);</div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;  uint16_t <a class="code" href="classIRPanasonicAc.html#a51d50a59e09f0911022c59ab60bf4889">getOnTimer</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a51fdaa11e4e3f77189a94007a5acbec2">setOnTimer</a>(<span class="keyword">const</span> uint16_t mins_since_midnight, <span class="keyword">const</span> <span class="keywordtype">bool</span> enable = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a102e7c029a923e121e40326859f2e4a3">cancelOnTimer</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#a04cbf8f5063a3892020d383c77abc57c">isOnTimerEnabled</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;  uint16_t <a class="code" href="classIRPanasonicAc.html#a4bce377d32504f666662f1d93645761f">getOffTimer</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a08e097f40cee6c614ec1a8de716222cf">setOffTimer</a>(<span class="keyword">const</span> uint16_t mins_since_midnight,</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;                   <span class="keyword">const</span> <span class="keywordtype">bool</span> enable = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a6d202284320c59205cb0d02cb613cada">cancelOffTimer</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc.html#ac8e218b4886d66889734b01232767c8a">isOffTimerEnabled</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc.html#a3f3bc3e4b73338351f33f26c635075bb">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc.html#aeada51b2d1ff51ff81dfc5c996b416df">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc.html#a024e64fe32848e9b0b72e9c04db0fd98">convertSwingV</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> position);</div>
<div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc.html#abb17db3452ae347101dc6eaa8e84433b">convertSwingH</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#aae50ee315fa9c9ec1a4078da40d6b147">stdAc::swingh_t</a> position);</div>
<div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRPanasonicAc.html#a1ace0180b9ac3f4bd17357a03c64792e">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRPanasonicAc.html#a1eff8e4d670abc303a02d8baeeb58f8c">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> <a class="code" href="classIRPanasonicAc.html#adae801e0a2641c196a59d65c26404a13">toCommonSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#aae50ee315fa9c9ec1a4078da40d6b147">stdAc::swingh_t</a> <a class="code" href="classIRPanasonicAc.html#aa4241990c350ca936c73b8391c2a11fc">toCommonSwingH</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRPanasonicAc.html#af2218f117db06424ced00ba6c0cc3234">toCommon</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRPanasonicAc.html#ada0b3e2bf11123d0a2f5df8692ae73ad">toString</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classIRPanasonicAc.html#a065dcc65ef3dbb8f2384f883fb97d102">  171</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRPanasonicAc.html#a065dcc65ef3dbb8f2384f883fb97d102">_irsend</a>;  </div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;  IRsendTest <a class="code" href="classIRPanasonicAc.html#a065dcc65ef3dbb8f2384f883fb97d102">_irsend</a>;  </div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;<span class="preprocessor">#endif  // UNIT_TEST</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"><a class="line" href="classIRPanasonicAc.html#a85d5118c0ed947cc77f2ed94b0d44e4a">  177</a></span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#a85d5118c0ed947cc77f2ed94b0d44e4a">remote_state</a>[<a class="code" href="IRremoteESP8266_8h.html#ab21d86545b57738354e7a3b833d38f94">kPanasonicAcStateLength</a>];  </div>
<div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="classIRPanasonicAc.html#ad0300ee66bcab38e13724520cb3226f9">  178</a></span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#ad0300ee66bcab38e13724520cb3226f9">_swingh</a>;</div>
<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classIRPanasonicAc.html#af6511e3c9745ff6750dc6fc3fdda21b3">  179</a></span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc.html#af6511e3c9745ff6750dc6fc3fdda21b3">_temp</a>;</div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#aa40bef35000ddf6d14e286b3f2044897">fixChecksum</a>(<span class="keyword">const</span> uint16_t length = <a class="code" href="IRremoteESP8266_8h.html#ab21d86545b57738354e7a3b833d38f94">kPanasonicAcStateLength</a>);</div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;  <span class="keyword">static</span> uint16_t <a class="code" href="classIRPanasonicAc.html#ab0a592b759daf90be548ac69ae99f40f">_getTime</a>(<span class="keyword">const</span> uint8_t ptr[]);</div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;  <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc.html#a51e306dd7a3e4d580ed5396fcd166141">_setTime</a>(uint8_t * <span class="keyword">const</span> ptr, <span class="keyword">const</span> uint16_t mins_since_midnight,</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;                       <span class="keyword">const</span> <span class="keywordtype">bool</span> round_down);</div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;};</div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160; </div>
<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html">  187</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionPanasonicAc32Protocol.html">PanasonicAc32Protocol</a> {</div>
<div class="line"><a name="l00188"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#a3e93ce14cef274f4ac003f8ba54cec5d">  188</a></span>&#160;  uint32_t <a class="code" href="unionPanasonicAc32Protocol.html#a3e93ce14cef274f4ac003f8ba54cec5d">raw</a>;  </div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;  <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;    <span class="comment">// Byte 0</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#aa1aac1cdb8d947e7ecea4a487e2a184f">  191</a></span>&#160;    uint8_t             :3;</div>
<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#ad2150fa0dbf816d48818969100ea1ac1">  192</a></span>&#160;    uint8_t <a class="code" href="unionPanasonicAc32Protocol.html#ad2150fa0dbf816d48818969100ea1ac1">SwingH</a>      :1;</div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#ad72c8342fd1bcf04c0244934ac6a1172">  193</a></span>&#160;    uint8_t <a class="code" href="unionPanasonicAc32Protocol.html#ad72c8342fd1bcf04c0244934ac6a1172">SwingV</a>      :3;</div>
<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#a5cda61ba9d077c018393878bac8ef02e">  194</a></span>&#160;    uint8_t             :1;  </div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;    <span class="comment">// Byte 1</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#ab2296c3c02d374663675d476bc0b2b0c">  196</a></span>&#160;    uint8_t             :8;  <span class="comment">// Always seems to be 0x36.</span></div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;    <span class="comment">// Byte 2</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#ad0ab801a8f4ec655d176bb900d50245d">  198</a></span>&#160;    uint8_t <a class="code" href="unionPanasonicAc32Protocol.html#ad0ab801a8f4ec655d176bb900d50245d">Temp</a>        :4;</div>
<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#aff4c3aeb5a2724653c334f5ea75b6435">  199</a></span>&#160;    uint8_t <a class="code" href="unionPanasonicAc32Protocol.html#aff4c3aeb5a2724653c334f5ea75b6435">Fan</a>         :4;</div>
<div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;    <span class="comment">// Byte 3</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#adc5a9e48b207202c5361e700a06157e2">  201</a></span>&#160;    uint8_t <a class="code" href="unionPanasonicAc32Protocol.html#adc5a9e48b207202c5361e700a06157e2">Mode</a>        :3;</div>
<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#a5d6c6d8100c60323449ba5f96e147172">  202</a></span>&#160;    uint8_t <a class="code" href="unionPanasonicAc32Protocol.html#a5d6c6d8100c60323449ba5f96e147172">PowerToggle</a> :1;  <span class="comment">// 0 means toggle, 1 = keep the same.</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="unionPanasonicAc32Protocol.html#a7c4bfcb851fdb80a894a63b2315735d8">  203</a></span>&#160;    uint8_t             :4;</div>
<div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;  };</div>
<div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;};</div>
<div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160; </div>
<div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#ab18e968771c2ace0b2e053ea61a0327a">  207</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#ab18e968771c2ace0b2e053ea61a0327a">kPanasonicAc32Fan</a> =  1;  <span class="comment">// 0b001</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#afb25de760b1210efd2b6d34ddc1dcee8">  208</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#afb25de760b1210efd2b6d34ddc1dcee8">kPanasonicAc32Cool</a> = 2;  <span class="comment">// 0b010</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a92592f6e966de10510e8547e3863445a">  209</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a92592f6e966de10510e8547e3863445a">kPanasonicAc32Dry</a> =  3;  <span class="comment">// 0b011</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a91581c58624da05d36e3807a4eecfd8a">  210</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a91581c58624da05d36e3807a4eecfd8a">kPanasonicAc32Heat</a> = 4;  <span class="comment">// 0b010</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a3ddd918dd9ccd97fc591a795c665f275">  211</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a3ddd918dd9ccd97fc591a795c665f275">kPanasonicAc32Auto</a> = 6;  <span class="comment">// 0b110</span></div>
<div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160; </div>
<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a3cc712e4dbf4d8ab9b60b4338a1c6831">  213</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a3cc712e4dbf4d8ab9b60b4338a1c6831">kPanasonicAc32FanMin</a> =  2;</div>
<div class="line"><a name="l00214"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#af395ea1be8216b63320e7669f582e399">  214</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#af395ea1be8216b63320e7669f582e399">kPanasonicAc32FanLow</a> =  3;</div>
<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#ad43a603c7c5d6d52ec7af7b6aa7258af">  215</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#ad43a603c7c5d6d52ec7af7b6aa7258af">kPanasonicAc32FanMed</a> =  4;</div>
<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a010754f8844452de684b2d346f6beb79">  216</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a010754f8844452de684b2d346f6beb79">kPanasonicAc32FanHigh</a> = 5;</div>
<div class="line"><a name="l00217"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a7fa3122beae91071e2fde235a6b76da5">  217</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a7fa3122beae91071e2fde235a6b76da5">kPanasonicAc32FanMax</a> =  6;</div>
<div class="line"><a name="l00218"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#aa093ff0443bb37cecd19331b2147ddb6">  218</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#aa093ff0443bb37cecd19331b2147ddb6">kPanasonicAc32FanAuto</a> = 0xF;</div>
<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#a705b34ad74e271656bf8986740658321">  219</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="ir__Panasonic_8h.html#a705b34ad74e271656bf8986740658321">kPanasonicAc32SwingVAuto</a> = 0x7;   <span class="comment">// 0b111</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"><a class="line" href="ir__Panasonic_8h.html#aeeca2ce0d19ad601e762a9f1858c2d50">  220</a></span>&#160;<span class="keyword">const</span> uint32_t <a class="code" href="ir__Panasonic_8h.html#aeeca2ce0d19ad601e762a9f1858c2d50">kPanasonicAc32KnownGood</a> = 0x0AF136FC;  </div>
<div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160; </div>
<div class="line"><a name="l00223"></a><span class="lineno"><a class="line" href="classIRPanasonicAc32.html">  223</a></span>&#160;<span class="keyword">class </span><a class="code" href="classIRPanasonicAc32.html">IRPanasonicAc32</a> {</div>
<div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160; <span class="keyword">public</span>:</div>
<div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;  <span class="keyword">explicit</span> <a class="code" href="classIRPanasonicAc32.html#ade8637984d8c1d5d881dc636d501676d">IRPanasonicAc32</a>(<span class="keyword">const</span> uint16_t pin, <span class="keyword">const</span> <span class="keywordtype">bool</span> inverted = <span class="keyword">false</span>,</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;                           <span class="keyword">const</span> <span class="keywordtype">bool</span> use_modulation = <span class="keyword">true</span>);</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#ac38e1daa7107f90d2d1984940c72c4a1">stateReset</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;<span class="preprocessor">#if SEND_PANASONIC_AC32</span></div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#aae5867f05744ebcac4720b31b6fc9021">send</a>(<span class="keyword">const</span> uint16_t repeat = <a class="code" href="IRremoteESP8266_8h.html#af6b7c6ad564253cb128ac92c00e86f0c">kPanasonicAcDefaultRepeat</a>);</div>
<div class="line"><a name="l00234"></a><span class="lineno"><a class="line" href="classIRPanasonicAc32.html#a99218b5c80a3cedda986df9bfbcf5065">  234</a></span>&#160;  int8_t <a class="code" href="classIRPanasonicAc32.html#a99218b5c80a3cedda986df9bfbcf5065">calibrate</a>(<span class="keywordtype">void</span>) { <span class="keywordflow">return</span> <a class="code" href="classIRPanasonicAc32.html#acc38daddd226f27b33835532041d5148">_irsend</a>.<a class="code" href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">calibrate</a>(); }</div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;<span class="preprocessor">#endif  // SEND_PANASONIC_AC32</span></div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#a8f57fefe38eac51f49113a21defadc4c">begin</a>(<span class="keywordtype">void</span>);</div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#ad0206dff39920f1407ed52256ee1b083">setPowerToggle</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> on);</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc32.html#afbbae70ea168e39a3adcf6846e981bd8">getPowerToggle</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#a697a5816a4bed187e2245fe626727395">setTemp</a>(<span class="keyword">const</span> uint8_t temp);</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc32.html#a1813480b9ecf4cee49d41f3da84f2e9f">getTemp</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#aaa15347ebf0eb6db7abb64553f3eb3d7">setFan</a>(<span class="keyword">const</span> uint8_t fan);</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc32.html#a03a6d54ef606dcb67931a7e42532fb34">getFan</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#a3bd5cef91112ddb0913685e64d3f60ae">setMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc32.html#a353b10038a47d96ec12ea233b8160031">getMode</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#a349462a31274f3785effdb249b485368">setRaw</a>(<span class="keyword">const</span> uint32_t state);</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;  uint32_t <a class="code" href="classIRPanasonicAc32.html#a9128df3724e0767070718c9811ce7d2d">getRaw</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#ab6af790d2828a64e5b5cb70bf818a578">setSwingVertical</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;  uint8_t <a class="code" href="classIRPanasonicAc32.html#a93326072ab7684c147673ff7a5074799">getSwingVertical</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;  <span class="keywordtype">void</span> <a class="code" href="classIRPanasonicAc32.html#a3361eb1f7e4da86290ad3f2c3e68340b">setSwingHorizontal</a>(<span class="keyword">const</span> <span class="keywordtype">bool</span> on);</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;  <span class="keywordtype">bool</span> <a class="code" href="classIRPanasonicAc32.html#aa1d2c9d265db4c3395376c45ba6b5bba">getSwingHorizontal</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc32.html#a229264735483d62735dc3b32c42fb718">convertMode</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> mode);</div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc32.html#a35814ff1a9625da3380482d039665b0b">convertFan</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> speed);</div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;  <span class="keyword">static</span> uint8_t <a class="code" href="classIRPanasonicAc32.html#a0487f241fd414aa20d2f352203c72a26">convertSwingV</a>(<span class="keyword">const</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> position);</div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a> <a class="code" href="classIRPanasonicAc32.html#a396a35813eef61112168f4700eb6e4f7">toCommonMode</a>(<span class="keyword">const</span> uint8_t mode);</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a> <a class="code" href="classIRPanasonicAc32.html#acbe96fc57d66d4759e007d97b2cba8b6">toCommonFanSpeed</a>(<span class="keyword">const</span> uint8_t speed);</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;  <span class="keyword">static</span> <a class="code" href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a> <a class="code" href="classIRPanasonicAc32.html#a3118f4625c25c450a0dccf34568ea726">toCommonSwingV</a>(<span class="keyword">const</span> uint8_t pos);</div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;  <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> <a class="code" href="classIRPanasonicAc32.html#a49749cb320f52c62fd51a6d271277696">toCommon</a>(<span class="keyword">const</span> <a class="code" href="structstdAc_1_1state__t.html">stdAc::state_t</a> *prev = NULL) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;  <a class="code" href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a> <a class="code" href="classIRPanasonicAc32.html#a4aee4f688769c04453ac275ffdb1a94c">toString</a>(<span class="keywordtype">void</span>) <span class="keyword">const</span>;</div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;<span class="preprocessor">#ifndef UNIT_TEST</span></div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160; </div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160; <span class="keyword">private</span>:</div>
<div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="classIRPanasonicAc32.html#acc38daddd226f27b33835532041d5148">  262</a></span>&#160;  <a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="classIRPanasonicAc32.html#acc38daddd226f27b33835532041d5148">_irsend</a>;  </div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;<span class="preprocessor">#else  // UNIT_TEST</span></div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;  IRsendTest <a class="code" href="classIRPanasonicAc32.html#acc38daddd226f27b33835532041d5148">_irsend</a>;  </div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;<span class="preprocessor">#endif  // UNIT_TEST</span></div>
<div class="line"><a name="l00268"></a><span class="lineno"><a class="line" href="classIRPanasonicAc32.html#a9d6fab2a42e831ab00ab5364ad8d3de4">  268</a></span>&#160;  <a class="code" href="unionPanasonicAc32Protocol.html">PanasonicAc32Protocol</a> <a class="code" href="classIRPanasonicAc32.html#a9d6fab2a42e831ab00ab5364ad8d3de4">_</a>;  </div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;};</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160; </div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;<span class="preprocessor">#endif  // IR_PANASONIC_H_</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="air__Panasonic_8h_html_a7d4486fd68969af4f7230f12e865c698"><div class="ttname"><a href="ir__Panasonic_8h.html#a7d4486fd68969af4f7230f12e865c698">kPanasonicAcFanAuto</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanAuto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:61</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ab0a592b759daf90be548ac69ae99f40f"><div class="ttname"><a href="classIRPanasonicAc.html#ab0a592b759daf90be548ac69ae99f40f">IRPanasonicAc::_getTime</a></div><div class="ttdeci">static uint16_t _getTime(const uint8_t ptr[])</div><div class="ttdoc">Get the time from a given pointer location.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:549</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html"><div class="ttname"><a href="classIRPanasonicAc.html">IRPanasonicAc</a></div><div class="ttdoc">Class for handling detailed Panasonic A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:104</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a0487f241fd414aa20d2f352203c72a26"><div class="ttname"><a href="classIRPanasonicAc32.html#a0487f241fd414aa20d2f352203c72a26">IRPanasonicAc32::convertSwingV</a></div><div class="ttdeci">static uint8_t convertSwingV(const stdAc::swingv_t position)</div><div class="ttdoc">Convert a standard A/C vertical swing into its native setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1273</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_af8a5607c317e541752fada6ca79ee80f"><div class="ttname"><a href="classIRPanasonicAc.html#af8a5607c317e541752fada6ca79ee80f">IRPanasonicAc::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void)</div><div class="ttdoc">Get the current temperature setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:392</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a5c1b18d1b834e9d46cbd29c74a1b8269"><div class="ttname"><a href="ir__Panasonic_8h.html#a5c1b18d1b834e9d46cbd29c74a1b8269">kPanasonicAcIonFilterOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcIonFilterOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:96</div></div>
<div class="ttc" id="air__Panasonic_8h_html_aa7c839a4342205c384870e8a4f5ec36b"><div class="ttname"><a href="ir__Panasonic_8h.html#aa7c839a4342205c384870e8a4f5ec36b">kPanasonicAcAuto</a></div><div class="ttdeci">const uint8_t kPanasonicAcAuto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:51</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a16577844a2f5ca46e2dff076952f2963"><div class="ttname"><a href="ir__Panasonic_8h.html#a16577844a2f5ca46e2dff076952f2963">kPanasonicAcTimeSize</a></div><div class="ttdeci">const uint8_t kPanasonicAcTimeSize</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:90</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a697a5816a4bed187e2245fe626727395"><div class="ttname"><a href="classIRPanasonicAc32.html#a697a5816a4bed187e2245fe626727395">IRPanasonicAc32::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp)</div><div class="ttdoc">Set the desired temperature.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1134</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a63308883e8447aa5cdf7d29107be220f"><div class="ttname"><a href="classIRPanasonicAc.html#a63308883e8447aa5cdf7d29107be220f">IRPanasonicAc::setRaw</a></div><div class="ttdeci">void setRaw(const uint8_t state[])</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:329</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a99218b5c80a3cedda986df9bfbcf5065"><div class="ttname"><a href="classIRPanasonicAc32.html#a99218b5c80a3cedda986df9bfbcf5065">IRPanasonicAc32::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:234</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html"><div class="ttname"><a href="unionPanasonicAc32Protocol.html">PanasonicAc32Protocol</a></div><div class="ttdoc">Native representation of a Panasonic 32-bit A/C message.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:187</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a3bd5cef91112ddb0913685e64d3f60ae"><div class="ttname"><a href="classIRPanasonicAc32.html#a3bd5cef91112ddb0913685e64d3f60ae">IRPanasonicAc32::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1153</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a282900f1c494efdc6ee057357e624d2e"><div class="ttname"><a href="ir__Panasonic_8h.html#a282900f1c494efdc6ee057357e624d2e">kPanasonicAcSwingHRight</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingHRight</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:84</div></div>
<div class="ttc" id="anamespacestdAc_html_ac07f224c7bb47cac55dd01f24770ef43"><div class="ttname"><a href="namespacestdAc.html#ac07f224c7bb47cac55dd01f24770ef43">stdAc::swingv_t</a></div><div class="ttdeci">swingv_t</div><div class="ttdoc">Common A/C settings for Vertical Swing.</div><div class="ttdef"><b>Definition:</b> IRsend.h:74</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a3cc712e4dbf4d8ab9b60b4338a1c6831"><div class="ttname"><a href="ir__Panasonic_8h.html#a3cc712e4dbf4d8ab9b60b4338a1c6831">kPanasonicAc32FanMin</a></div><div class="ttdeci">const uint8_t kPanasonicAc32FanMin</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:213</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a450c7951a525817d27351fb7c8ff2df9"><div class="ttname"><a href="ir__Panasonic_8h.html#a450c7951a525817d27351fb7c8ff2df9">kPanasonicAcFanMin</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanMin</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:56</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a4bce377d32504f666662f1d93645761f"><div class="ttname"><a href="classIRPanasonicAc.html#a4bce377d32504f666662f1d93645761f">IRPanasonicAc::getOffTimer</a></div><div class="ttdeci">uint16_t getOffTimer(void)</div><div class="ttdoc">Get the Off Timer time value.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:610</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a1ec8db8798f79dead05233ee6333700d"><div class="ttname"><a href="ir__Panasonic_8h.html#a1ec8db8798f79dead05233ee6333700d">kPanasonicAcQuietOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcQuietOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:69</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a010754f8844452de684b2d346f6beb79"><div class="ttname"><a href="ir__Panasonic_8h.html#a010754f8844452de684b2d346f6beb79">kPanasonicAc32FanHigh</a></div><div class="ttdeci">const uint8_t kPanasonicAc32FanHigh</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:216</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a477b61044f1db5c296f13a404c536046"><div class="ttname"><a href="ir__Panasonic_8h.html#a477b61044f1db5c296f13a404c536046">kPanasonicAcOffTimerOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcOffTimerOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:89</div></div>
<div class="ttc" id="air__Panasonic_8h_html_ad43a603c7c5d6d52ec7af7b6aa7258af"><div class="ttname"><a href="ir__Panasonic_8h.html#ad43a603c7c5d6d52ec7af7b6aa7258af">kPanasonicAc32FanMed</a></div><div class="ttdeci">const uint8_t kPanasonicAc32FanMed</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:215</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a586a655b3afd82c38588fc1b61089aa1"><div class="ttname"><a href="ir__Panasonic_8h.html#a586a655b3afd82c38588fc1b61089aa1">kPanasonicAcTolerance</a></div><div class="ttdeci">const uint16_t kPanasonicAcTolerance</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:49</div></div>
<div class="ttc" id="air__Panasonic_8h_html_aa093ff0443bb37cecd19331b2147ddb6"><div class="ttname"><a href="ir__Panasonic_8h.html#aa093ff0443bb37cecd19331b2147ddb6">kPanasonicAc32FanAuto</a></div><div class="ttdeci">const uint8_t kPanasonicAc32FanAuto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:218</div></div>
<div class="ttc" id="anamespacestdAc_html_a8bb0dbf18fe69f639f4ac0b3ff133383"><div class="ttname"><a href="namespacestdAc.html#a8bb0dbf18fe69f639f4ac0b3ff133383">stdAc::fanspeed_t</a></div><div class="ttdeci">fanspeed_t</div><div class="ttdoc">Common A/C settings for Fan Speeds.</div><div class="ttdef"><b>Definition:</b> IRsend.h:61</div></div>
<div class="ttc" id="air__Panasonic_8h_html_adde8b69377faa9a4566dc15e95711257"><div class="ttname"><a href="ir__Panasonic_8h.html#adde8b69377faa9a4566dc15e95711257">kPanasonicAcExcess</a></div><div class="ttdeci">const uint16_t kPanasonicAcExcess</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:47</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ad0300ee66bcab38e13724520cb3226f9"><div class="ttname"><a href="classIRPanasonicAc.html#ad0300ee66bcab38e13724520cb3226f9">IRPanasonicAc::_swingh</a></div><div class="ttdeci">uint8_t _swingh</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:178</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_ad72c8342fd1bcf04c0244934ac6a1172"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#ad72c8342fd1bcf04c0244934ac6a1172">PanasonicAc32Protocol::SwingV</a></div><div class="ttdeci">uint8_t SwingV</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:193</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a024e64fe32848e9b0b72e9c04db0fd98"><div class="ttname"><a href="classIRPanasonicAc.html#a024e64fe32848e9b0b72e9c04db0fd98">IRPanasonicAc::convertSwingV</a></div><div class="ttdeci">static uint8_t convertSwingV(const stdAc::swingv_t position)</div><div class="ttdoc">Convert a standard A/C vertical swing into its native setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:693</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a4aee4f688769c04453ac275ffdb1a94c"><div class="ttname"><a href="classIRPanasonicAc32.html#a4aee4f688769c04453ac275ffdb1a94c">IRPanasonicAc32::toString</a></div><div class="ttdeci">String toString(void) const</div><div class="ttdoc">Convert the current internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1286</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a27e9b1af4b65830015576beed69cb27d"><div class="ttname"><a href="ir__Panasonic_8h.html#a27e9b1af4b65830015576beed69cb27d">kPanasonicAcPowerfulOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcPowerfulOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:70</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a35814ff1a9625da3380482d039665b0b"><div class="ttname"><a href="classIRPanasonicAc32.html#a35814ff1a9625da3380482d039665b0b">IRPanasonicAc32::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1229</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a49749cb320f52c62fd51a6d271277696"><div class="ttname"><a href="classIRPanasonicAc32.html#a49749cb320f52c62fd51a6d271277696">IRPanasonicAc32::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(const stdAc::state_t *prev=NULL) const</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1318</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a0eee4ad6105d35ee6c34c4666174b04b"><div class="ttname"><a href="classIRPanasonicAc.html#a0eee4ad6105d35ee6c34c4666174b04b">IRPanasonicAc::encodeTime</a></div><div class="ttdeci">static uint16_t encodeTime(const uint8_t hours, const uint8_t mins)</div><div class="ttdoc">Convert standard (military/24hr) time to nr. of minutes since midnight.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:541</div></div>
<div class="ttc" id="air__Panasonic_8h_html_ad7942b5ffbb2b1f7a5d9b3719592622b"><div class="ttname"><a href="ir__Panasonic_8h.html#ad7942b5ffbb2b1f7a5d9b3719592622b">kPanasonicAcTimeOverflowSize</a></div><div class="ttdeci">const uint8_t kPanasonicAcTimeOverflowSize</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:91</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a978004e8e2c4122fec81c5a972b842a0"><div class="ttname"><a href="ir__Panasonic_8h.html#a978004e8e2c4122fec81c5a972b842a0">kPanasonicAcFanMed</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanMed</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:58</div></div>
<div class="ttc" id="aIRsend_8h_html"><div class="ttname"><a href="IRsend_8h.html">IRsend.h</a></div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a8d77292226f55601c30ee53252ba83cd"><div class="ttname"><a href="classIRPanasonicAc.html#a8d77292226f55601c30ee53252ba83cd">IRPanasonicAc::setFan</a></div><div class="ttdeci">void setFan(const uint8_t fan)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:464</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a302ba64400c820a5a0d822315516564a"><div class="ttname"><a href="classIRPanasonicAc.html#a302ba64400c820a5a0d822315516564a">IRPanasonicAc::getFan</a></div><div class="ttdeci">uint8_t getFan(void)</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:481</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a51b6ae49cb490f697adeaf7f9f466518"><div class="ttname"><a href="classIRPanasonicAc.html#a51b6ae49cb490f697adeaf7f9f466518">IRPanasonicAc::setQuiet</a></div><div class="ttdeci">void setQuiet(const bool on)</div><div class="ttdoc">Set the Quiet setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:500</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a91581c58624da05d36e3807a4eecfd8a"><div class="ttname"><a href="ir__Panasonic_8h.html#a91581c58624da05d36e3807a4eecfd8a">kPanasonicAc32Heat</a></div><div class="ttdeci">const uint8_t kPanasonicAc32Heat</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:210</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_af6511e3c9745ff6750dc6fc3fdda21b3"><div class="ttname"><a href="classIRPanasonicAc.html#af6511e3c9745ff6750dc6fc3fdda21b3">IRPanasonicAc::_temp</a></div><div class="ttdeci">uint8_t _temp</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:179</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a349462a31274f3785effdb249b485368"><div class="ttname"><a href="classIRPanasonicAc32.html#a349462a31274f3785effdb249b485368">IRPanasonicAc32::setRaw</a></div><div class="ttdeci">void setRaw(const uint32_t state)</div><div class="ttdoc">Set the internal state from a valid code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1119</div></div>
<div class="ttc" id="aclassIRsend_html"><div class="ttname"><a href="classIRsend.html">IRsend</a></div><div class="ttdoc">Class for sending all basic IR protocols.</div><div class="ttdef"><b>Definition:</b> IRsend.h:237</div></div>
<div class="ttc" id="aclassIRsend_html_ad1776aa6c699f9eeca1eef9bb4fe355b"><div class="ttname"><a href="classIRsend.html#ad1776aa6c699f9eeca1eef9bb4fe355b">IRsend::calibrate</a></div><div class="ttdeci">int8_t calibrate(uint16_t hz=38000U)</div><div class="ttdoc">Calculate &amp; set any offsets to account for execution times during sending.</div><div class="ttdef"><b>Definition:</b> IRsend.cpp:207</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a705b34ad74e271656bf8986740658321"><div class="ttname"><a href="ir__Panasonic_8h.html#a705b34ad74e271656bf8986740658321">kPanasonicAc32SwingVAuto</a></div><div class="ttdeci">const uint8_t kPanasonicAc32SwingVAuto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:219</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_a5d6c6d8100c60323449ba5f96e147172"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#a5d6c6d8100c60323449ba5f96e147172">PanasonicAc32Protocol::PowerToggle</a></div><div class="ttdeci">uint8_t PowerToggle</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:202</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_ad0206dff39920f1407ed52256ee1b083"><div class="ttname"><a href="classIRPanasonicAc32.html#ad0206dff39920f1407ed52256ee1b083">IRPanasonicAc32::setPowerToggle</a></div><div class="ttdeci">void setPowerToggle(const bool on)</div><div class="ttdoc">Set the Power Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1126</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a48f31b1f85c92fac22f85a1aa8074c6e"><div class="ttname"><a href="classIRPanasonicAc.html#a48f31b1f85c92fac22f85a1aa8074c6e">IRPanasonicAc::setSwingVertical</a></div><div class="ttdeci">void setSwingVertical(const uint8_t elevation)</div><div class="ttdoc">Control the vertical swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:418</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_afbeda3fd1bdc8c37d01bdf9f5c8274ff"><div class="ttname"><a href="IRremoteESP8266_8h.html#afbeda3fd1bdc8c37d01bdf9f5c8274ff">String</a></div><div class="ttdeci">std::string String</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1521</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a1eff8e4d670abc303a02d8baeeb58f8c"><div class="ttname"><a href="classIRPanasonicAc.html#a1eff8e4d670abc303a02d8baeeb58f8c">IRPanasonicAc::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:734</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a222ef797cbefbff556e0ab93f23407cc"><div class="ttname"><a href="ir__Panasonic_8h.html#a222ef797cbefbff556e0ab93f23407cc">kPanasonicAcFanLow</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanLow</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:57</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a5a1c4f5b9eb7a3a1a81a6acd0491c3cd"><div class="ttname"><a href="classIRPanasonicAc.html#a5a1c4f5b9eb7a3a1a81a6acd0491c3cd">IRPanasonicAc::setIon</a></div><div class="ttdeci">void setIon(const bool on)</div><div class="ttdoc">Set the Ion (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:657</div></div>
<div class="ttc" id="air__Panasonic_8h_html_aa839301a08c8e49548f497e786dbb6fa"><div class="ttname"><a href="ir__Panasonic_8h.html#aa839301a08c8e49548f497e786dbb6fa">kPanasonicAcPowerfulCkpOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcPowerfulCkpOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:73</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a91e2933692ad98acf054c7a69f6c2018"><div class="ttname"><a href="ir__Panasonic_8h.html#a91e2933692ad98acf054c7a69f6c2018">kPanasonicAcSwingHAuto</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingHAuto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:86</div></div>
<div class="ttc" id="air__Panasonic_8h_html_af395ea1be8216b63320e7669f582e399"><div class="ttname"><a href="ir__Panasonic_8h.html#af395ea1be8216b63320e7669f582e399">kPanasonicAc32FanLow</a></div><div class="ttdeci">const uint8_t kPanasonicAc32FanLow</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:214</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a7861e8477904e1a572bcf35286fd3733"><div class="ttname"><a href="ir__Panasonic_8h.html#a7861e8477904e1a572bcf35286fd3733">kPanasonicAcMinTemp</a></div><div class="ttdeci">const uint8_t kPanasonicAcMinTemp</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:66</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a3361eb1f7e4da86290ad3f2c3e68340b"><div class="ttname"><a href="classIRPanasonicAc32.html#a3361eb1f7e4da86290ad3f2c3e68340b">IRPanasonicAc32::setSwingHorizontal</a></div><div class="ttdeci">void setSwingHorizontal(const bool on)</div><div class="ttdoc">Control the horizontal swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1246</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a9e9b3d0c77ef93ab472ce14ed1534c77"><div class="ttname"><a href="ir__Panasonic_8h.html#a9e9b3d0c77ef93ab472ce14ed1534c77">kPanasonicAcPowerOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcPowerOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:63</div></div>
<div class="ttc" id="air__Panasonic_8h_html_ac37bb7dd975a9aa803edfc108a5071ed"><div class="ttname"><a href="ir__Panasonic_8h.html#ac37bb7dd975a9aa803edfc108a5071ed">kPanasonicAcHeat</a></div><div class="ttdeci">const uint8_t kPanasonicAcHeat</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:54</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a778420ebe52aa6422ba5633ce91676df"><div class="ttname"><a href="classIRPanasonicAc.html#a778420ebe52aa6422ba5633ce91676df">IRPanasonicAc::send</a></div><div class="ttdeci">void send(const uint16_t repeat=kPanasonicAcDefaultRepeat)</div><div class="ttdoc">Send the current internal state as an IR message.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:246</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_aa1d2c9d265db4c3395376c45ba6b5bba"><div class="ttname"><a href="classIRPanasonicAc32.html#aa1d2c9d265db4c3395376c45ba6b5bba">IRPanasonicAc32::getSwingHorizontal</a></div><div class="ttdeci">bool getSwingHorizontal(void) const</div><div class="ttdoc">Get the current horizontal swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1242</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_aff4c3aeb5a2724653c334f5ea75b6435"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#aff4c3aeb5a2724653c334f5ea75b6435">PanasonicAc32Protocol::Fan</a></div><div class="ttdeci">uint8_t Fan</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:199</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a084479e8f23f7dbb8f155209b36efb3b"><div class="ttname"><a href="classIRPanasonicAc.html#a084479e8f23f7dbb8f155209b36efb3b">IRPanasonicAc::getClock</a></div><div class="ttdeci">uint16_t getClock(void)</div><div class="ttdoc">Get the current clock time value.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:559</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a2d50ed3994f6cc6e205d2c5fb6c0cc55"><div class="ttname"><a href="classIRPanasonicAc.html#a2d50ed3994f6cc6e205d2c5fb6c0cc55">IRPanasonicAc::getPower</a></div><div class="ttdeci">bool getPower(void)</div><div class="ttdoc">Get the A/C power state of the remote.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:351</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a8d7dfc9b5f7c7a4523c0bfa4e0bc415a"><div class="ttname"><a href="classIRPanasonicAc.html#a8d7dfc9b5f7c7a4523c0bfa4e0bc415a">IRPanasonicAc::getQuiet</a></div><div class="ttdeci">bool getQuiet(void)</div><div class="ttdoc">Get the Quiet setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:488</div></div>
<div class="ttc" id="air__Panasonic_8h_html_aeeca2ce0d19ad601e762a9f1858c2d50"><div class="ttname"><a href="ir__Panasonic_8h.html#aeeca2ce0d19ad601e762a9f1858c2d50">kPanasonicAc32KnownGood</a></div><div class="ttdeci">const uint32_t kPanasonicAc32KnownGood</div><div class="ttdoc">Cool, Auto, 16C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:220</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a396a35813eef61112168f4700eb6e4f7"><div class="ttname"><a href="classIRPanasonicAc32.html#a396a35813eef61112168f4700eb6e4f7">IRPanasonicAc32::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1182</div></div>
<div class="ttc" id="aIRsend_8h_html_a1b797a5e5176ac0eef49810bf7f40e6f"><div class="ttname"><a href="IRsend_8h.html#a1b797a5e5176ac0eef49810bf7f40e6f">panasonic_ac_remote_model_t</a></div><div class="ttdeci">panasonic_ac_remote_model_t</div><div class="ttdoc">Panasonic A/C model numbers.</div><div class="ttdef"><b>Definition:</b> IRsend.h:181</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html"><div class="ttname"><a href="IRremoteESP8266_8h.html">IRremoteESP8266.h</a></div></div>
<div class="ttc" id="anamespacestdAc_html_aae50ee315fa9c9ec1a4078da40d6b147"><div class="ttname"><a href="namespacestdAc.html#aae50ee315fa9c9ec1a4078da40d6b147">stdAc::swingh_t</a></div><div class="ttdeci">swingh_t</div><div class="ttdoc">Common A/C settings for Horizontal Swing.</div><div class="ttdef"><b>Definition:</b> IRsend.h:100</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a08e097f40cee6c614ec1a8de716222cf"><div class="ttname"><a href="classIRPanasonicAc.html#a08e097f40cee6c614ec1a8de716222cf">IRPanasonicAc::setOffTimer</a></div><div class="ttdeci">void setOffTimer(const uint16_t mins_since_midnight, const bool enable=true)</div><div class="ttdoc">Set/Enable the Off Timer.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:620</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_af2218f117db06424ced00ba6c0cc3234"><div class="ttname"><a href="classIRPanasonicAc.html#af2218f117db06424ced00ba6c0cc3234">IRPanasonicAc::toCommon</a></div><div class="ttdeci">stdAc::state_t toCommon(void)</div><div class="ttdoc">Convert the current internal state into its stdAc::state_t equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:771</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a0e38b0f3c54e49cdb59f92279e19840f"><div class="ttname"><a href="classIRPanasonicAc.html#a0e38b0f3c54e49cdb59f92279e19840f">IRPanasonicAc::calcChecksum</a></div><div class="ttdeci">static uint8_t calcChecksum(const uint8_t *state, const uint16_t length=kPanasonicAcStateLength)</div><div class="ttdoc">Calculate the checksum for a given state.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:232</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a3f3bc3e4b73338351f33f26c635075bb"><div class="ttname"><a href="classIRPanasonicAc.html#a3f3bc3e4b73338351f33f26c635075bb">IRPanasonicAc::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:666</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a49329b4fef403696effcbcc5c8a86cd2"><div class="ttname"><a href="ir__Panasonic_8h.html#a49329b4fef403696effcbcc5c8a86cd2">kPanasonicAcChecksumInit</a></div><div class="ttdeci">const uint8_t kPanasonicAcChecksumInit</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:87</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a51e306dd7a3e4d580ed5396fcd166141"><div class="ttname"><a href="classIRPanasonicAc.html#a51e306dd7a3e4d580ed5396fcd166141">IRPanasonicAc::_setTime</a></div><div class="ttdeci">static void _setTime(uint8_t *const ptr, const uint16_t mins_since_midnight, const bool round_down)</div><div class="ttdoc">Set the time at a given pointer location.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:566</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a7a35303cd4fb4b23c0e5a25777d5819c"><div class="ttname"><a href="classIRPanasonicAc.html#a7a35303cd4fb4b23c0e5a25777d5819c">IRPanasonicAc::getSwingVertical</a></div><div class="ttdeci">uint8_t getSwingVertical(void)</div><div class="ttdoc">Get the current vertical swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:412</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_af6b7c6ad564253cb128ac92c00e86f0c"><div class="ttname"><a href="IRremoteESP8266_8h.html#af6b7c6ad564253cb128ac92c00e86f0c">kPanasonicAcDefaultRepeat</a></div><div class="ttdeci">const uint16_t kPanasonicAcDefaultRepeat</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1344</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_ad0ab801a8f4ec655d176bb900d50245d"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#ad0ab801a8f4ec655d176bb900d50245d">PanasonicAc32Protocol::Temp</a></div><div class="ttdeci">uint8_t Temp</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:198</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a0e1b7a7591a0f14b2f8be3cb222f1187"><div class="ttname"><a href="ir__Panasonic_8h.html#a0e1b7a7591a0f14b2f8be3cb222f1187">kPanasonicAcSwingHFullRight</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingHFullRight</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:85</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a3ddd918dd9ccd97fc591a795c665f275"><div class="ttname"><a href="ir__Panasonic_8h.html#a3ddd918dd9ccd97fc591a795c665f275">kPanasonicAc32Auto</a></div><div class="ttdeci">const uint8_t kPanasonicAc32Auto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:211</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a853f2c2922e03a975bdd11efc474fa7e"><div class="ttname"><a href="ir__Panasonic_8h.html#a853f2c2922e03a975bdd11efc474fa7e">kPanasonicAcSwingHLeft</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingHLeft</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:83</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a736b77df0563705095d8f4241a80b1cb"><div class="ttname"><a href="classIRPanasonicAc.html#a736b77df0563705095d8f4241a80b1cb">IRPanasonicAc::getPowerful</a></div><div class="ttdeci">bool getPowerful(void)</div><div class="ttdoc">Get the Powerful (Turbo) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:513</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a32f3f07813165a39359887485dd87254"><div class="ttname"><a href="classIRPanasonicAc.html#a32f3f07813165a39359887485dd87254">IRPanasonicAc::setSwingHorizontal</a></div><div class="ttdeci">void setSwingHorizontal(const uint8_t direction)</div><div class="ttdoc">Control the horizontal swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:435</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ad65c2bcdc3984a986f5ef2f03b5574d4"><div class="ttname"><a href="classIRPanasonicAc.html#ad65c2bcdc3984a986f5ef2f03b5574d4">IRPanasonicAc::getRaw</a></div><div class="ttdeci">uint8_t * getRaw(void)</div><div class="ttdoc">Get a PTR to the internal state/code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:322</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a9d6fab2a42e831ab00ab5364ad8d3de4"><div class="ttname"><a href="classIRPanasonicAc32.html#a9d6fab2a42e831ab00ab5364ad8d3de4">IRPanasonicAc32::_</a></div><div class="ttdeci">PanasonicAc32Protocol _</div><div class="ttdoc">The state in code form.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:268</div></div>
<div class="ttc" id="aIRremoteESP8266_8h_html_ab21d86545b57738354e7a3b833d38f94"><div class="ttname"><a href="IRremoteESP8266_8h.html#ab21d86545b57738354e7a3b833d38f94">kPanasonicAcStateLength</a></div><div class="ttdeci">const uint16_t kPanasonicAcStateLength</div><div class="ttdef"><b>Definition:</b> IRremoteESP8266.h:1340</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a1813480b9ecf4cee49d41f3da84f2e9f"><div class="ttname"><a href="classIRPanasonicAc32.html#a1813480b9ecf4cee49d41f3da84f2e9f">IRPanasonicAc32::getTemp</a></div><div class="ttdeci">uint8_t getTemp(void) const</div><div class="ttdoc">Get the current desired temperature setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1142</div></div>
<div class="ttc" id="air__Panasonic_8h_html_afad8a7257fc178321867f16939fff7c7"><div class="ttname"><a href="ir__Panasonic_8h.html#afad8a7257fc178321867f16939fff7c7">kPanasonicAcSwingHMiddle</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingHMiddle</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:81</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a229264735483d62735dc3b32c42fb718"><div class="ttname"><a href="classIRPanasonicAc32.html#a229264735483d62735dc3b32c42fb718">IRPanasonicAc32::convertMode</a></div><div class="ttdeci">static uint8_t convertMode(const stdAc::opmode_t mode)</div><div class="ttdoc">Convert a stdAc::opmode_t enum into its native mode.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1169</div></div>
<div class="ttc" id="air__Panasonic_8h_html_acfaa3d61fbb13fc6cd8d354f1c0a8dc7"><div class="ttname"><a href="ir__Panasonic_8h.html#acfaa3d61fbb13fc6cd8d354f1c0a8dc7">kPanasonicAcCool</a></div><div class="ttdeci">const uint8_t kPanasonicAcCool</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:53</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a93326072ab7684c147673ff7a5074799"><div class="ttname"><a href="classIRPanasonicAc32.html#a93326072ab7684c147673ff7a5074799">IRPanasonicAc32::getSwingVertical</a></div><div class="ttdeci">uint8_t getSwingVertical(void) const</div><div class="ttdoc">Get the current vertical swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1250</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_ade8637984d8c1d5d881dc636d501676d"><div class="ttname"><a href="classIRPanasonicAc32.html#ade8637984d8c1d5d881dc636d501676d">IRPanasonicAc32::IRPanasonicAc32</a></div><div class="ttdeci">IRPanasonicAc32(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1098</div></div>
<div class="ttc" id="air__Panasonic_8h_html_af344612d7f1c0d3f8271c312f310243e"><div class="ttname"><a href="ir__Panasonic_8h.html#af344612d7f1c0d3f8271c312f310243e">kPanasonicFreq</a></div><div class="ttdeci">const uint16_t kPanasonicFreq</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:46</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_acc38daddd226f27b33835532041d5148"><div class="ttname"><a href="classIRPanasonicAc32.html#acc38daddd226f27b33835532041d5148">IRPanasonicAc32::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:262</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_aa4241990c350ca936c73b8391c2a11fc"><div class="ttname"><a href="classIRPanasonicAc.html#aa4241990c350ca936c73b8391c2a11fc">IRPanasonicAc::toCommonSwingH</a></div><div class="ttdeci">static stdAc::swingh_t toCommonSwingH(const uint8_t pos)</div><div class="ttdoc">Convert a native horizontal swing postion to it's common equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:748</div></div>
<div class="ttc" id="air__Panasonic_8h_html_ab18e968771c2ace0b2e053ea61a0327a"><div class="ttname"><a href="ir__Panasonic_8h.html#ab18e968771c2ace0b2e053ea61a0327a">kPanasonicAc32Fan</a></div><div class="ttdeci">const uint8_t kPanasonicAc32Fan</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:207</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a065dcc65ef3dbb8f2384f883fb97d102"><div class="ttname"><a href="classIRPanasonicAc.html#a065dcc65ef3dbb8f2384f883fb97d102">IRPanasonicAc::_irsend</a></div><div class="ttdeci">IRsend _irsend</div><div class="ttdoc">Instance of the IR send class.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:171</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_ab6af790d2828a64e5b5cb70bf818a578"><div class="ttname"><a href="classIRPanasonicAc32.html#ab6af790d2828a64e5b5cb70bf818a578">IRPanasonicAc32::setSwingVertical</a></div><div class="ttdeci">void setSwingVertical(const uint8_t pos)</div><div class="ttdoc">Control the vertical swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1254</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a51fdaa11e4e3f77189a94007a5acbec2"><div class="ttname"><a href="classIRPanasonicAc.html#a51fdaa11e4e3f77189a94007a5acbec2">IRPanasonicAc::setOnTimer</a></div><div class="ttdeci">void setOnTimer(const uint16_t mins_since_midnight, const bool enable=true)</div><div class="ttdoc">Set/Enable the On Timer.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:591</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a88e6b0f607b17266567306576e623a0c"><div class="ttname"><a href="classIRPanasonicAc.html#a88e6b0f607b17266567306576e623a0c">IRPanasonicAc::on</a></div><div class="ttdeci">void on(void)</div><div class="ttdoc">Change the power setting to On.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:356</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ae8b0f4518ee1a913d47a7101b0a11185"><div class="ttname"><a href="classIRPanasonicAc.html#ae8b0f4518ee1a913d47a7101b0a11185">IRPanasonicAc::IRPanasonicAc</a></div><div class="ttdeci">IRPanasonicAc(const uint16_t pin, const bool inverted=false, const bool use_modulation=true)</div><div class="ttdoc">Class constructor.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:204</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ada0b3e2bf11123d0a2f5df8692ae73ad"><div class="ttname"><a href="classIRPanasonicAc.html#ada0b3e2bf11123d0a2f5df8692ae73ad">IRPanasonicAc::toString</a></div><div class="ttdeci">String toString(void)</div><div class="ttdoc">Convert the internal state into a human readable string.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:797</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_adc5a9e48b207202c5361e700a06157e2"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#adc5a9e48b207202c5361e700a06157e2">PanasonicAc32Protocol::Mode</a></div><div class="ttdeci">uint8_t Mode</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:201</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a7fa3122beae91071e2fde235a6b76da5"><div class="ttname"><a href="ir__Panasonic_8h.html#a7fa3122beae91071e2fde235a6b76da5">kPanasonicAc32FanMax</a></div><div class="ttdeci">const uint8_t kPanasonicAc32FanMax</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:217</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a5a3779cd6fd8d573ae14ed4a6d676dba"><div class="ttname"><a href="ir__Panasonic_8h.html#a5a3779cd6fd8d573ae14ed4a6d676dba">kPanasonicAcQuietCkpOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcQuietCkpOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:72</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a88a9678f8b00efa173b800b0b8441f87"><div class="ttname"><a href="ir__Panasonic_8h.html#a88a9678f8b00efa173b800b0b8441f87">kPanasonicKnownGoodState</a></div><div class="ttdeci">const uint8_t kPanasonicKnownGoodState[kPanasonicAcStateLength]</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:98</div></div>
<div class="ttc" id="air__Panasonic_8h_html_ab19838820e1ca649c156b5f4a5d6c8cb"><div class="ttname"><a href="ir__Panasonic_8h.html#ab19838820e1ca649c156b5f4a5d6c8cb">kPanasonicAcFanHigh</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanHigh</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:59</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a218e2ea8c76966105c71edcb6e46cd12"><div class="ttname"><a href="ir__Panasonic_8h.html#a218e2ea8c76966105c71edcb6e46cd12">kPanasonicAcSwingVAuto</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingVAuto</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:79</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_aae5867f05744ebcac4720b31b6fc9021"><div class="ttname"><a href="classIRPanasonicAc32.html#aae5867f05744ebcac4720b31b6fc9021">IRPanasonicAc32::send</a></div><div class="ttdeci">void send(const uint16_t repeat=kPanasonicAcDefaultRepeat)</div><div class="ttdoc">Send the current internal state as IR messages.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1105</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a25c63195112c5aedc5b5bad40441c55a"><div class="ttname"><a href="ir__Panasonic_8h.html#a25c63195112c5aedc5b5bad40441c55a">kPanasonicAcSwingVHigh</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingVHigh</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:75</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a04cbf8f5063a3892020d383c77abc57c"><div class="ttname"><a href="classIRPanasonicAc.html#a04cbf8f5063a3892020d383c77abc57c">IRPanasonicAc::isOnTimerEnabled</a></div><div class="ttdeci">bool isOnTimerEnabled(void)</div><div class="ttdoc">Check if the On Timer is Enabled.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:604</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_af48075dc4eb84fcc7f718375d4b0e00a"><div class="ttname"><a href="classIRPanasonicAc.html#af48075dc4eb84fcc7f718375d4b0e00a">IRPanasonicAc::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:216</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a92592f6e966de10510e8547e3863445a"><div class="ttname"><a href="ir__Panasonic_8h.html#a92592f6e966de10510e8547e3863445a">kPanasonicAc32Dry</a></div><div class="ttdeci">const uint8_t kPanasonicAc32Dry</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:209</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_aa40bef35000ddf6d14e286b3f2044897"><div class="ttname"><a href="classIRPanasonicAc.html#aa40bef35000ddf6d14e286b3f2044897">IRPanasonicAc::fixChecksum</a></div><div class="ttdeci">void fixChecksum(const uint16_t length=kPanasonicAcStateLength)</div><div class="ttdoc">Calculate and set the checksum values for the internal state.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:239</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_aaa15347ebf0eb6db7abb64553f3eb3d7"><div class="ttname"><a href="classIRPanasonicAc32.html#aaa15347ebf0eb6db7abb64553f3eb3d7">IRPanasonicAc32::setFan</a></div><div class="ttdeci">void setFan(const uint8_t fan)</div><div class="ttdoc">Set the speed of the fan.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1194</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a3f850333f2aa7ce40856c99ef85ffd79"><div class="ttname"><a href="classIRPanasonicAc.html#a3f850333f2aa7ce40856c99ef85ffd79">IRPanasonicAc::calibrate</a></div><div class="ttdeci">int8_t calibrate(void)</div><div class="ttdoc">Run the calibration to calculate uSec timing offsets for this platform.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:115</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ad60bf8a88d041f8e8ab3d728831ee8f3"><div class="ttname"><a href="classIRPanasonicAc.html#ad60bf8a88d041f8e8ab3d728831ee8f3">IRPanasonicAc::setPower</a></div><div class="ttdeci">void setPower(const bool on)</div><div class="ttdoc">Control the power state of the A/C unit.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:343</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a8f57fefe38eac51f49113a21defadc4c"><div class="ttname"><a href="classIRPanasonicAc32.html#a8f57fefe38eac51f49113a21defadc4c">IRPanasonicAc32::begin</a></div><div class="ttdeci">void begin(void)</div><div class="ttdoc">Set up hardware to be able to send a message.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1111</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a203e0351cd53db8376312a3289503175"><div class="ttname"><a href="ir__Panasonic_8h.html#a203e0351cd53db8376312a3289503175">kPanasonicAcTempOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcTempOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:64</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a3f76c6aca94f52c227c2e259512fd101"><div class="ttname"><a href="classIRPanasonicAc.html#a3f76c6aca94f52c227c2e259512fd101">IRPanasonicAc::setClock</a></div><div class="ttdeci">void setClock(const uint16_t mins_since_midnight)</div><div class="ttdoc">Set the current clock time value.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:580</div></div>
<div class="ttc" id="air__Panasonic_8h_html_aefb20e7cdbbc27e3c0725a8660a84a28"><div class="ttname"><a href="ir__Panasonic_8h.html#aefb20e7cdbbc27e3c0725a8660a84a28">kPanasonicAcTimeSpecial</a></div><div class="ttdeci">const uint16_t kPanasonicAcTimeSpecial</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:93</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_add025b64e736d5120abeb2564a2849a4"><div class="ttname"><a href="classIRPanasonicAc.html#add025b64e736d5120abeb2564a2849a4">IRPanasonicAc::setMode</a></div><div class="ttdeci">void setMode(const uint8_t mode)</div><div class="ttdoc">Set the operating mode of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:369</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a3118f4625c25c450a0dccf34568ea726"><div class="ttname"><a href="classIRPanasonicAc32.html#a3118f4625c25c450a0dccf34568ea726">IRPanasonicAc32::toCommonSwingV</a></div><div class="ttdeci">static stdAc::swingv_t toCommonSwingV(const uint8_t pos)</div><div class="ttdoc">Convert a native vertical swing postion to it's common equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1266</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a3ae9b6c5581f1bfb5b31e252052a6c9d"><div class="ttname"><a href="ir__Panasonic_8h.html#a3ae9b6c5581f1bfb5b31e252052a6c9d">kPanasonicAcSwingVLow</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingVLow</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:77</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a102e7c029a923e121e40326859f2e4a3"><div class="ttname"><a href="classIRPanasonicAc.html#a102e7c029a923e121e40326859f2e4a3">IRPanasonicAc::cancelOnTimer</a></div><div class="ttdeci">void cancelOnTimer(void)</div><div class="ttdoc">Cancel the On Timer.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:600</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_acbe96fc57d66d4759e007d97b2cba8b6"><div class="ttname"><a href="classIRPanasonicAc32.html#acbe96fc57d66d4759e007d97b2cba8b6">IRPanasonicAc32::toCommonFanSpeed</a></div><div class="ttdeci">static stdAc::fanspeed_t toCommonFanSpeed(const uint8_t speed)</div><div class="ttdoc">Convert a native fan speed into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1215</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a37d9b268b3c8527be0939e0a24b02ef6"><div class="ttname"><a href="classIRPanasonicAc.html#a37d9b268b3c8527be0939e0a24b02ef6">IRPanasonicAc::getSwingHorizontal</a></div><div class="ttdeci">uint8_t getSwingHorizontal(void)</div><div class="ttdoc">Get the current horizontal swing setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:429</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a87e4dd423bbd1f879a9d5da31e1fea5e"><div class="ttname"><a href="ir__Panasonic_8h.html#a87e4dd423bbd1f879a9d5da31e1fea5e">kPanasonicAcFan</a></div><div class="ttdeci">const uint8_t kPanasonicAcFan</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:55</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a03b706293c1c5b348bba536e6d8d33f5"><div class="ttname"><a href="classIRPanasonicAc.html#a03b706293c1c5b348bba536e6d8d33f5">IRPanasonicAc::off</a></div><div class="ttdeci">void off(void)</div><div class="ttdoc">Change the power setting to Off.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:359</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a2d211bd2150a67819453f3220dc0cc91"><div class="ttname"><a href="ir__Panasonic_8h.html#a2d211bd2150a67819453f3220dc0cc91">kPanasonicAcDry</a></div><div class="ttdeci">const uint8_t kPanasonicAcDry</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:52</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html"><div class="ttname"><a href="classIRPanasonicAc32.html">IRPanasonicAc32</a></div><div class="ttdoc">Class for handling detailed Panasonic 32bit A/C messages.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:223</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a85d5118c0ed947cc77f2ed94b0d44e4a"><div class="ttname"><a href="classIRPanasonicAc.html#a85d5118c0ed947cc77f2ed94b0d44e4a">IRPanasonicAc::remote_state</a></div><div class="ttdeci">uint8_t remote_state[kPanasonicAcStateLength]</div><div class="ttdoc">The state in code form.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:177</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a6d202284320c59205cb0d02cb613cada"><div class="ttname"><a href="classIRPanasonicAc.html#a6d202284320c59205cb0d02cb613cada">IRPanasonicAc::cancelOffTimer</a></div><div class="ttdeci">void cancelOffTimer(void)</div><div class="ttdoc">Cancel the Off Timer.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:635</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a16c946660d2ee3821dd2e30a69144a38"><div class="ttname"><a href="ir__Panasonic_8h.html#a16c946660d2ee3821dd2e30a69144a38">kPanasonicAcIonFilterByte</a></div><div class="ttdeci">const uint8_t kPanasonicAcIonFilterByte</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:95</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_aeada51b2d1ff51ff81dfc5c996b416df"><div class="ttname"><a href="classIRPanasonicAc.html#aeada51b2d1ff51ff81dfc5c996b416df">IRPanasonicAc::convertFan</a></div><div class="ttdeci">static uint8_t convertFan(const stdAc::fanspeed_t speed)</div><div class="ttdoc">Convert a stdAc::fanspeed_t enum into it's native speed.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:679</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a5d46c8234f97e10695507b17a7483d51"><div class="ttname"><a href="ir__Panasonic_8h.html#a5d46c8234f97e10695507b17a7483d51">kPanasonicAcSwingVMiddle</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingVMiddle</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:76</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a6a084754596f7840dd308041d11a822d"><div class="ttname"><a href="classIRPanasonicAc.html#a6a084754596f7840dd308041d11a822d">IRPanasonicAc::validChecksum</a></div><div class="ttdeci">static bool validChecksum(const uint8_t *state, const uint16_t length=kPanasonicAcStateLength)</div><div class="ttdoc">Verify the checksum is valid for a given state.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:222</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a2210f85a17fba2bbdfbb883e9fb57e52"><div class="ttname"><a href="ir__Panasonic_8h.html#a2210f85a17fba2bbdfbb883e9fb57e52">kPanasonicAcFanDelta</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanDelta</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:62</div></div>
<div class="ttc" id="air__Panasonic_8h_html_ac1cea523d6e1da08d333e0b4acec81af"><div class="ttname"><a href="ir__Panasonic_8h.html#ac1cea523d6e1da08d333e0b4acec81af">kPanasonicAcSwingVHighest</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingVHighest</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:74</div></div>
<div class="ttc" id="air__Panasonic_8h_html_afb25de760b1210efd2b6d34ddc1dcee8"><div class="ttname"><a href="ir__Panasonic_8h.html#afb25de760b1210efd2b6d34ddc1dcee8">kPanasonicAc32Cool</a></div><div class="ttdeci">const uint8_t kPanasonicAc32Cool</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:208</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a9a9fbf531f04c486edf913c382351b2b"><div class="ttname"><a href="classIRPanasonicAc.html#a9a9fbf531f04c486edf913c382351b2b">IRPanasonicAc::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the state of the remote to a known good state/sequence.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:209</div></div>
<div class="ttc" id="air__Panasonic_8h_html_af30649a3489a4a1dc1f655d15c00e991"><div class="ttname"><a href="ir__Panasonic_8h.html#af30649a3489a4a1dc1f655d15c00e991">kPanasonicAcTempSize</a></div><div class="ttdeci">const uint8_t kPanasonicAcTempSize</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:65</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a5ffd59dd87b047e172ba74866267a9f3"><div class="ttname"><a href="classIRPanasonicAc.html#a5ffd59dd87b047e172ba74866267a9f3">IRPanasonicAc::getMode</a></div><div class="ttdeci">uint8_t getMode(void)</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:363</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a6357688bc9cca92ab222343ee045f4f4"><div class="ttname"><a href="classIRPanasonicAc.html#a6357688bc9cca92ab222343ee045f4f4">IRPanasonicAc::setPowerful</a></div><div class="ttdeci">void setPowerful(const bool on)</div><div class="ttdoc">Set the Powerful (Turbo) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:525</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a76543f9d81c2d109e04359f0c61dcb99"><div class="ttname"><a href="ir__Panasonic_8h.html#a76543f9d81c2d109e04359f0c61dcb99">kPanasonicAcFanModeTemp</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanModeTemp</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:68</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_afbbae70ea168e39a3adcf6846e981bd8"><div class="ttname"><a href="classIRPanasonicAc32.html#afbbae70ea168e39a3adcf6846e981bd8">IRPanasonicAc32::getPowerToggle</a></div><div class="ttdeci">bool getPowerToggle(void) const</div><div class="ttdoc">Get the Power Toggle setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1130</div></div>
<div class="ttc" id="air__Panasonic_8h_html_aa4599c84d72ab9c622b642870efb9cf1"><div class="ttname"><a href="ir__Panasonic_8h.html#aa4599c84d72ab9c622b642870efb9cf1">kPanasonicAcFanMax</a></div><div class="ttdeci">const uint8_t kPanasonicAcFanMax</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:60</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a1ace0180b9ac3f4bd17357a03c64792e"><div class="ttname"><a href="classIRPanasonicAc.html#a1ace0180b9ac3f4bd17357a03c64792e">IRPanasonicAc::toCommonMode</a></div><div class="ttdeci">static stdAc::opmode_t toCommonMode(const uint8_t mode)</div><div class="ttdoc">Convert a native mode into its stdAc equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:721</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a9128df3724e0767070718c9811ce7d2d"><div class="ttname"><a href="classIRPanasonicAc32.html#a9128df3724e0767070718c9811ce7d2d">IRPanasonicAc32::getRaw</a></div><div class="ttdeci">uint32_t getRaw(void) const</div><div class="ttdoc">Get a copy of the internal state/code for this protocol.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1115</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_ac8e218b4886d66889734b01232767c8a"><div class="ttname"><a href="classIRPanasonicAc.html#ac8e218b4886d66889734b01232767c8a">IRPanasonicAc::isOffTimerEnabled</a></div><div class="ttdeci">bool isOffTimerEnabled(void)</div><div class="ttdoc">Check if the Off Timer is Enabled.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:639</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a61378ccad09d1a2e900123a8cbd34858"><div class="ttname"><a href="ir__Panasonic_8h.html#a61378ccad09d1a2e900123a8cbd34858">kPanasonicAcTimeMax</a></div><div class="ttdeci">const uint16_t kPanasonicAcTimeMax</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:92</div></div>
<div class="ttc" id="air__Panasonic_8h_html_abf1d8c53a1b69d99019c6878f9ec220d"><div class="ttname"><a href="ir__Panasonic_8h.html#abf1d8c53a1b69d99019c6878f9ec220d">kPanasonicAcSwingHFullLeft</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingHFullLeft</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:82</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a625be846baf3ec556a59379785e642e8"><div class="ttname"><a href="classIRPanasonicAc.html#a625be846baf3ec556a59379785e642e8">IRPanasonicAc::getModel</a></div><div class="ttdeci">panasonic_ac_remote_model_t getModel(void)</div><div class="ttdoc">Get/Detect the model of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:303</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a6d6909b7b96815c227f0009dcbd3ce8c"><div class="ttname"><a href="classIRPanasonicAc.html#a6d6909b7b96815c227f0009dcbd3ce8c">IRPanasonicAc::getIon</a></div><div class="ttdeci">bool getIon(void)</div><div class="ttdoc">Get the Ion (filter) setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:645</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_a3e93ce14cef274f4ac003f8ba54cec5d"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#a3e93ce14cef274f4ac003f8ba54cec5d">PanasonicAc32Protocol::raw</a></div><div class="ttdeci">uint32_t raw</div><div class="ttdoc">The state in IR code form.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:188</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_ac38e1daa7107f90d2d1984940c72c4a1"><div class="ttname"><a href="classIRPanasonicAc32.html#ac38e1daa7107f90d2d1984940c72c4a1">IRPanasonicAc32::stateReset</a></div><div class="ttdeci">void stateReset(void)</div><div class="ttdoc">Reset the state of the remote to a known good state/sequence.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1122</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a51d50a59e09f0911022c59ab60bf4889"><div class="ttname"><a href="classIRPanasonicAc.html#a51d50a59e09f0911022c59ab60bf4889">IRPanasonicAc::getOnTimer</a></div><div class="ttdeci">uint16_t getOnTimer(void)</div><div class="ttdoc">Get the On Timer time value.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:586</div></div>
<div class="ttc" id="astructstdAc_1_1state__t_html"><div class="ttname"><a href="structstdAc_1_1state__t.html">stdAc::state_t</a></div><div class="ttdoc">Structure to hold a common A/C state.</div><div class="ttdef"><b>Definition:</b> IRsend.h:114</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a342531bfea3b05484de84e537bde390c"><div class="ttname"><a href="classIRPanasonicAc.html#a342531bfea3b05484de84e537bde390c">IRPanasonicAc::setModel</a></div><div class="ttdeci">void setModel(const panasonic_ac_remote_model_t model)</div><div class="ttdoc">Set the model of the A/C to emulate.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:253</div></div>
<div class="ttc" id="aunionPanasonicAc32Protocol_html_ad2150fa0dbf816d48818969100ea1ac1"><div class="ttname"><a href="unionPanasonicAc32Protocol.html#ad2150fa0dbf816d48818969100ea1ac1">PanasonicAc32Protocol::SwingH</a></div><div class="ttdeci">uint8_t SwingH</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:192</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a353b10038a47d96ec12ea233b8160031"><div class="ttname"><a href="classIRPanasonicAc32.html#a353b10038a47d96ec12ea233b8160031">IRPanasonicAc32::getMode</a></div><div class="ttdeci">uint8_t getMode(void) const</div><div class="ttdoc">Get the operating mode setting of the A/C.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1148</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a95fe6bc5b2565bf29d1a6dcee2f0c39f"><div class="ttname"><a href="ir__Panasonic_8h.html#a95fe6bc5b2565bf29d1a6dcee2f0c39f">kPanasonicAcMaxTemp</a></div><div class="ttdeci">const uint8_t kPanasonicAcMaxTemp</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:67</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_abb17db3452ae347101dc6eaa8e84433b"><div class="ttname"><a href="classIRPanasonicAc.html#abb17db3452ae347101dc6eaa8e84433b">IRPanasonicAc::convertSwingH</a></div><div class="ttdeci">static uint8_t convertSwingH(const stdAc::swingh_t position)</div><div class="ttdoc">Convert a standard A/C horizontal swing into its native setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:707</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_a58376c311177e701333f4915515d49f1"><div class="ttname"><a href="classIRPanasonicAc.html#a58376c311177e701333f4915515d49f1">IRPanasonicAc::setTemp</a></div><div class="ttdeci">void setTemp(const uint8_t temp, const bool remember=true)</div><div class="ttdoc">Set the temperature.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:401</div></div>
<div class="ttc" id="air__Panasonic_8h_html_af269e81dae5989c33199d607adcc04a0"><div class="ttname"><a href="ir__Panasonic_8h.html#af269e81dae5989c33199d607adcc04a0">kPanasonicAcSwingVLowest</a></div><div class="ttdeci">const uint8_t kPanasonicAcSwingVLowest</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:78</div></div>
<div class="ttc" id="air__Panasonic_8h_html_a64350202f82aabfd1673f0dda4d3c13d"><div class="ttname"><a href="ir__Panasonic_8h.html#a64350202f82aabfd1673f0dda4d3c13d">kPanasonicAcOnTimerOffset</a></div><div class="ttdeci">const uint8_t kPanasonicAcOnTimerOffset</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.h:88</div></div>
<div class="ttc" id="aclassIRPanasonicAc_html_adae801e0a2641c196a59d65c26404a13"><div class="ttname"><a href="classIRPanasonicAc.html#adae801e0a2641c196a59d65c26404a13">IRPanasonicAc::toCommonSwingV</a></div><div class="ttdeci">static stdAc::swingv_t toCommonSwingV(const uint8_t pos)</div><div class="ttdoc">Convert a native vertical swing postion to it's common equivalent.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:762</div></div>
<div class="ttc" id="aclassIRPanasonicAc32_html_a03a6d54ef606dcb67931a7e42532fb34"><div class="ttname"><a href="classIRPanasonicAc32.html#a03a6d54ef606dcb67931a7e42532fb34">IRPanasonicAc32::getFan</a></div><div class="ttdeci">uint8_t getFan(void) const</div><div class="ttdoc">Get the current fan speed setting.</div><div class="ttdef"><b>Definition:</b> ir_Panasonic.cpp:1210</div></div>
<div class="ttc" id="anamespacestdAc_html_a99ad268c783486f9b3207cb78f48444f"><div class="ttname"><a href="namespacestdAc.html#a99ad268c783486f9b3207cb78f48444f">stdAc::opmode_t</a></div><div class="ttdeci">opmode_t</div><div class="ttdoc">Common A/C settings for A/C operating modes.</div><div class="ttdef"><b>Definition:</b> IRsend.h:49</div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>
